package com.upcode.weighing.domain;

import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;

import java.io.Serializable;
import java.util.Date;

/**
 * <p>
 * 消息模板表
 * </p>
 *
 * @author LXH
 * @since 2018-05-22
 */
@TableName("msg_template")
public class MsgTemplate implements Serializable {

    private static final long serialVersionUID = 1L;

    /**
     * 主键id
     */
	@TableId("id")
    @JsonSerialize(using= ToStringSerializer.class)
	private Long id;
    /**
     * 模板内容
     */
	@TableField("template_content")
	private String templateContent;
    /**
     * 消息模板标题
     */
	@TableField("template_title")
	private String templateTitle;

    /**
     * 模板是否选中
     */
	@TableField("choice_status")
    private Integer choiceStatus;

    /**
     * 消息类型字典id 0-系统通知  1-驶入通知 2-驶出通知 3-结算通知 4-下线通知  5-注册验证码  6-登录验证码 7-退款通知 15-补缴通行费
     */
	@TableField("msg_type")
	private Integer msgType;
    /**
     * 消息介质字典value  1-APP通知  2-SMS短信,3-电子邮件，4-站内消息
     */
	@TableField("msg_media")
	private Integer msgMedia;
    /**
     * 创建时间
     */
	@TableField("create_time")
	private Date createTime;
    /**
     * 更新时间
     */
	@TableField("update_time")
	private Date updateTime;
    /**
     * 状态，1 未删除，0 禁用，-1 删除
     */
	private Integer status;
    /**
     * 客户id
     */
	@TableField("client_id")
	private Long clientId;

    /**
     * 消息类型名称
      */
    @TableField(exist = false)
    private String msgTypeName;

    /**
     *
     * 消息介质名称
     */
    @TableField(exist = false)
    private String msgMediaName;

	@TableField("temp_id")
    private String tempId;

    public String getMsgTypeName() {
        return msgTypeName;
    }

    public void setMsgTypeName(String msgTypeName) {
        this.msgTypeName = msgTypeName;
    }

    public String getMsgMediaName() {
        return msgMediaName;
    }

    public void setMsgMediaName(String msgMediaName) {
        this.msgMediaName = msgMediaName;
    }

    public Integer getChoiceStatus() {
        return choiceStatus;
    }

    public void setChoiceStatus(Integer choiceStatus) {
        this.choiceStatus = choiceStatus;
    }

    public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public String getTemplateContent() {
		return templateContent;
	}

	public void setTemplateContent(String templateContent) {
		this.templateContent = templateContent;
	}

	public String getTemplateTitle() {
		return templateTitle;
	}

	public void setTemplateTitle(String templateTitle) {
		this.templateTitle = templateTitle;
	}

    public Integer getMsgType() {
        return msgType;
    }

    public void setMsgType(Integer msgType) {
        this.msgType = msgType;
    }

    public Integer getMsgMedia() {
        return msgMedia;
    }

    public void setMsgMedia(Integer msgMedia) {
        this.msgMedia = msgMedia;
    }

    public Date getCreateTime() {
		return createTime;
	}

	public void setCreateTime(Date createTime) {
		this.createTime = createTime;
	}

	public Date getUpdateTime() {
		return updateTime;
	}

	public void setUpdateTime(Date updateTime) {
		this.updateTime = updateTime;
	}

	public Integer getStatus() {
		return status;
	}

	public void setStatus(Integer status) {
		this.status = status;
	}

	public Long getClientId() {
		return clientId;
	}

	public void setClientId(Long clientId) {
		this.clientId = clientId;
	}

	@Override
	public String toString() {
		return "MsgTemplate{" +
			", id=" + id +
			", templateContent=" + templateContent +
			", templateTitle=" + templateTitle +
			", msgType=" + msgType +
			", msgMedia=" + msgMedia +
			", createTime=" + createTime +
			", updateTime=" + updateTime +
			", status=" + status +
			", clientId=" + clientId +
			"}";
	}

	public String getTempId() {
		return tempId;
	}

	public void setTempId(String tempId) {
		this.tempId = tempId;
	}
}
